package com.flyco.modules.fenxiao.entity;

import java.io.Serializable;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import com.flyco.poi.excel.annotation.Excel;

/**
 * @Description: 提现
 * @Author: flyco
 * @Date:   2020-08-24
 * @Version: V1.0
 */
@Data
@TableName("dist_withdrawn")
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="dist_withdrawn对象", description="提现")
public class DistWithdrawn {
    
	/**id*/
	@TableId(type = IdType.AUTO)
    @ApiModelProperty(value = "id")
	private Long id;
	/**会员id*/
	@Excel(name = "会员id", width = 15)
    @ApiModelProperty(value = "会员id")
	private Long memberId;
	/**申请时间*/
	@Excel(name = "申请时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "申请时间")
	private Date createTime;
	/**申请金额*/
	@Excel(name = "申请金额", width = 15)
    @ApiModelProperty(value = "申请金额")
	private java.math.BigDecimal applyAmount;
	/**提现服务费*/
	@Excel(name = "提现服务费", width = 15)
    @ApiModelProperty(value = "提现服务费")
	private java.math.BigDecimal withdrawnServiceFee;
	/**发票服务费*/
	@Excel(name = "发票服务费", width = 15)
    @ApiModelProperty(value = "发票服务费")
	private java.math.BigDecimal invoiceServiceFee;
	/**发票税率*/
	@Excel(name = "发票税率", width = 15)
    @ApiModelProperty(value = "发票税率")
	private java.math.BigDecimal invoiceTax;
	/**发票税额*/
	@Excel(name = "发票税额", width = 15)
    @ApiModelProperty(value = "发票税额")
	private java.math.BigDecimal invoiceTaxAmount;
	/**实际提现额*/
	@Excel(name = "实际提现额", width = 15)
    @ApiModelProperty(value = "实际提现额")
	private java.math.BigDecimal realWithdrawnAmount;
	/**申请前帐户表可用金额*/
	@Excel(name = "申请前帐户表可用金额", width = 15)
    @ApiModelProperty(value = "申请前帐户表可用金额")
	private java.math.BigDecimal beforeAvailableAmount;
	/**申请前用户可提额*/
	@Excel(name = "申请前用户可提额", width = 15)
    @ApiModelProperty(value = "申请前用户可提额")
	private java.math.BigDecimal beforeWithdrawnAmount;
	/**申请前用户总额*/
	@Excel(name = "申请前用户总额", width = 15)
    @ApiModelProperty(value = "申请前用户总额")
	private java.math.BigDecimal beforeTotalAmount;
	/**发票方式（1自提供/2飞科代理）*/
	@Excel(name = "发票方式（1自提供/2飞科代理）", width = 15)
    @ApiModelProperty(value = "发票方式（1自提供/2飞科代理）")
	private Integer invoiceSupplyType;
	/**提现目标类型 bank = 银行卡 alipay = 支付宝,wechat=微信*/
	@Excel(name = "提现目标类型 bank = 银行卡 alipay = 支付宝,wechat=微信", width = 15)
    @ApiModelProperty(value = "提现目标类型 bank = 银行卡 alipay = 支付宝,wechat=微信")
	private String withdrawnType;
	/**提现银行code*/
	@Excel(name = "提现银行code", width = 15)
    @ApiModelProperty(value = "提现银行code")
	private String bankCode;
	/**提现银行名*/
	@Excel(name = "提现银行名", width = 15)
    @ApiModelProperty(value = "提现银行名")
	private String bankName;
	/**银行卡号*/
	@Excel(name = "银行卡号", width = 15)
    @ApiModelProperty(value = "银行卡号")
	private String bankNo;
	/**提现名称*/
	@Excel(name = "提现名称", width = 15)
    @ApiModelProperty(value = "提现名称")
	private String realName;
	/**提现手机号码*/
	@Excel(name = "提现手机号码", width = 15)
    @ApiModelProperty(value = "提现手机号码")
	private String phone;
	/**三方平台账号（支付宝账号/微信号）*/
	@Excel(name = "三方平台账号（支付宝账号/微信号）", width = 15)
    @ApiModelProperty(value = "三方平台账号（支付宝账号/微信号）")
	private String thridNo;
	/**三方平台标识（如微信openid）*/
	@Excel(name = "三方平台标识（如微信openid）", width = 15)
    @ApiModelProperty(value = "三方平台标识（如微信openid）")
	private String thridId;
	/**状态(1.已提交，2.已确认，5.已完成，6.已关闭)*/
	@Excel(name = "状态(1.已提交，2.已确认，5.已完成，6.已关闭)", width = 15)
    @ApiModelProperty(value = "状态(1.已提交，2.已确认，5.已完成，6.已关闭)")
	private Integer status;
	/**提取状态（1.无，2未提取，3进行中，4取消，5已提取，6失败）*/
	@Excel(name = "提取状态（1.无，2未提取，3进行中，4取消，5已提取，6失败）", width = 15)
    @ApiModelProperty(value = "提取状态（1.无，2未提取，3进行中，4取消，5已提取，6失败）")
	private Integer extractStatus;
	/**审核状态（1.无，2未审核，3审核中，4已审核，5拒绝）*/
	@Excel(name = "审核状态（1.无，2未审核，3审核中，4已审核，5拒绝）", width = 15)
    @ApiModelProperty(value = "审核状态（1.无，2未审核，3审核中，4已审核，5拒绝）")
	private Integer confirmStatus;
	/**提现状态（1.无，2未提现，3提现中，4已提现，5拒绝）*/
	@Excel(name = "提现状态（1.无，2未提现，3提现中，4已提现，5拒绝）", width = 15)
    @ApiModelProperty(value = "提现状态（1.无，2未提现，3提现中，4已提现，5拒绝）")
	private Integer withdrawnStatus;
	/**审核人*/
	@Excel(name = "审核人", width = 15)
    @ApiModelProperty(value = "审核人")
	private String confirmBy;
	/**审核时间*/
	@Excel(name = "审核时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "审核时间")
	private Date confirmTime;
	/**出纳人*/
	@Excel(name = "出纳人", width = 15)
    @ApiModelProperty(value = "出纳人")
	private String cashierBy;
	/**出纳时间*/
	@Excel(name = "出纳时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "出纳时间")
	private Date cashierTime;
	/**发票状态（无/已申请/已收票/已核销）*/
	@Excel(name = "发票状态（无/已申请/已收票/已核销）", width = 15)
    @ApiModelProperty(value = "发票状态（无/已申请/已收票/已核销）")
	private Integer invoiceStatus;
	/**申请发票时间*/
	@Excel(name = "申请发票时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "申请发票时间")
	private Date invoiceApplyTime;
	/**收发票时间*/
	@Excel(name = "收发票时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "收发票时间")
	private Date invoiceReceiveTime;
	/**核销发票时间*/
	@Excel(name = "核销发票时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "核销发票时间")
	private Date invoiceVerificationTime;
	/**电子发票地址*/
	@Excel(name = "电子发票地址", width = 15)
    @ApiModelProperty(value = "电子发票地址")
	private String invoiceUrl;
	/**发票号码*/
	@Excel(name = "发票号码", width = 15)
    @ApiModelProperty(value = "发票号码")
	private String invoiceNo;
	/**物流公司*/
	@Excel(name = "物流公司", width = 15)
    @ApiModelProperty(value = "物流公司")
	private String invoiceDeliveryCompany;
	/**物流单号*/
	@Excel(name = "物流单号", width = 15)
    @ApiModelProperty(value = "物流单号")
	private String invoiceDeliverySn;
	/**版本号*/
	@Excel(name = "版本号", width = 15)
    @ApiModelProperty(value = "版本号")
	private Integer version;
}
